1 Introduction

This paper contains estimates for the reproductive number \(R_{t,m}\) over time \(t\) in various countries \(m\). It also shows the same for provinces within South Africa.. This is done using the methodology as described in [1]. These have been implemented in R using EpiEstim package [2] which is what is used here.

This paper and it’s results should be updated roughly daily and is available online.

2 Updates

As this paper is updated over time this section will summarise significant changes. The code producing this paper is tracked using Git. The Git commit hash for this project at the time of generating this paper was 1e8931456af4dd76051a9d267da94f21f097c52a.

2020-06-12

  • Initial version.

2020-06-13

  • Combine the version for South Africa and other countries.

2020-06-14

  • Add Google Mobility data for comparison and further modelling.

2020-06-15

  • Add more details about methodology.

2020-06-17

  • Tidy-up to remove the code.

3 Countries

All countries available in the data will be analysed but also the provinces of South Africa. This paper produces charts for the following countries only:

  • Brazil
  • Canada
  • Chile
  • India
  • Ireland
  • Italy
  • Peru
  • South Africa
  • Spain
  • United Kingdom

4 Data

4.1 South Africa

Data is downloaded from the Git repository associated with [3].

In the case data file row 21 and 32 contain no provincial details. We estimated it by spreading the national total to the provinces in proportion to the combined mixture of the prior day and the next day.

Further fixes are applied to both case and death data:

  1. Scale up the per province data for unknown values.
  2. This results in provincial data which are not whole numbers. These are rounded to the nearest whole number.
  3. A SA column is added as the sum of the new per province data.
  4. Data is formatted and disaggregated such that item represents the incremental cases or deaths rather than cumulative figures.
  5. Data is filled with data (albeit with 0 cases or deaths) for all dates in the range.
  6. Any incremental case or death counts that are negative are zeroeised.
  7. New cumulative figures are calculated.

4.2 Other countries

Data for other countries are downloaded from [4]. Minor formatting is applied to get the data ready for further processing.

4.3 Google Mobility Data

Google released mobility data indexes that deviations from a baseline of movement during 3 January to 6 February 2020 [5]. This data is downloaded and prepared for linking to our estimates of \(R_{t,m}\). The data is made available as a comma-separated file which is updated regularly but not daily. Data is sometimes up to a week behind. For countries other than South Africa only the country level mobility data is kept. I.e. we ignore regional data within countries. For South Africa provincial data is also kept.

We also calculate an average mobility index per [6]. This index averages the mobility indexes but exclude the following indexes:

  • Residential index is excluded as it’s less likely to drive the epidemic (and is inversely correlated),
  • Mobility in parks is also unlikely to be a driving factor.

5 Basic Exploration

5.1 South Africa

Below we plot cumulative case count on a log scale by province:

Below we plot the cumulative deaths by province on a log scale:

Below we plot average mobility indexes by province:

5.2 Other Countries

Below we plot cumulative case count on a log scale by country:

Below we plot the cumulative deaths by country on a log scale:

Below we plot average mobility indexes by country:

6 Method & Assumptions

This analysis follows the follows the method proposed [1].

Essentially this models the following relationship:

\(E(I_{t,m})=R_{t,m}\sum_{s=1}^tI_{t-s,m}w_{s}\) where:

  • \(m\) is the country of province in case of South African data.
  • \(I_{t,m}\) is the number of cases (or deaths) reported at time \(t\).
  • \(R_{t,m}\) is the “instantaneous reproduction number” to quote [1].
  • \(I_{t,m} \sim Poisson\) with the above mean.
  • \(w_{s}\) is the infectivity profile of an individual over time \(s\).

The formulation of instantaneous rate of transmission proposed in [1] is convenient because it ensures that \(R_{t,m}\) only depends on information that is known at time \(t\). We do not need to know about future transmission.

6.1 Serial Interval

To do further analysis an serial interval assumption is needed (\(w_{s}\)). The serial interval is taken from [7]. It’s assumed to be Gamma distributed with mean of 6.48 and standard deviation of 3.83. This corresponds to the effective infectiousness of an individual since acquiring the infection themselves.

We plot this serial distribution below:

6.2 Time Window Size

[1] describes a choice of a time window to estimate \(R_{t,m}\). Based on this analysis we chose a time window of 7-days (\(\tau\) using notation of [1]). During this window \(R_{t,m}\) is assumed to be constant. However information prior that is taken into account.

Note that the time window size does not interact with the serial interval as information prior to the window is taken into account. It’s just the period during which \(R_{t,m}\) is assumed to be constant.

Based on the table in Appendix 2 of [1] we believe a window of 7-days to be reasonable as long as that window contains 12 or more cases or deaths.

7 Estimate \(R_{t,m}\)

7.1 Estimation Routine

The analysis works backwards and fits \(R_{t,m}\) values for whole weeks (ending on the last date in the data) using the EpiEstim package.

So \(t\) is based on the date of reporting (be that cases or deaths) and \(m\) is the country or province. Two values are estimated for each country:

  1. \(R_{t,m}^{cases}\) is the reproductive number implied by the cases reported at time \(t\) in country \(m\).
  2. \(R_{t,m}^{deaths}\) is the reproductive number implied by the deaths reported at time \(t\) in country \(m\).

Note that the time periods are left unadjusted, though in reality the \(R_{t,m}^{deaths}\) should be shifted back approximately 2 weeks relative to \(R_{t,m}^{cases}\).

8 Linking \(R_{t,m}\) estimates to mobility

Linking the mobility data should be done in a way that corresponds to the time the infection should have occurred not the time of death. For cases we assume 6 days from infection to case being diagnosed plus a further 7-day reporting delay. For death we assume 23 days from infection to death and a further 7-day reporting delay as well.

Mobility data is then averaged over the weeks corresponding to the \(R_{t,m}\) shifted as above.

9 Modelling \(R_{t,m}\) as a function of Mobility Indexes

TO DO

10 Results

10.1 Current \(R_{t,m}\) estimates

Below current (last weekly) \(R_{t,m}\) estimates are tabulated.

10.1.1 South Africa

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
EC cases 980 2020-10-08 1.1 1.2 1.2
EC deaths 39 2020-10-08 0.8 1.2 1.6
FS cases 2,367 2020-10-08 1.1 1.1 1.2
FS deaths 48 2020-10-08 0.3 0.4 0.5
GP cases 1,982 2020-10-08 1.1 1.1 1.2
GP deaths 134 2020-10-08 0.9 1.1 1.3
KZN cases 832 2020-10-08 0.9 0.9 1.0
KZN deaths 201 2020-10-08 1.8 2.0 2.3
LP cases 533 2020-10-08 1.0 1.0 1.1
LP deaths 30 2020-10-08 1.3 1.9 2.6
MP cases 549 2020-10-08 0.9 1.0 1.1
MP deaths 20 2020-10-08 1.2 1.5 1.9
NC cases 1,495 2020-10-08 1.1 1.1 1.2
NC deaths 14 2020-10-08 0.5 0.8 1.2
NW cases 945 2020-10-08 1.0 1.1 1.2
NW deaths 5 2020-10-08 0.3 0.6 1.0
SA cases 10,807 2020-10-08 1.1 1.1 1.1
SA deaths 542 2020-10-08 1.0 1.1 1.2
WC cases 1,124 2020-10-08 1.1 1.2 1.2
WC deaths 51 2020-10-08 0.9 1.2 1.5

10.1.2 Other Countries

The table below contains \(R_{t,m}\) estimates for the last week available. These estimates are based either on cases or deaths and a 95% confidence interval is shown.

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Brazil cases 189,759 2020-10-08 1.0 1.0 1.0
Brazil deaths 4,276 2020-10-08 0.9 1.0 1.0
Canada cases 14,365 2020-10-08 1.3 1.3 1.3
Canada deaths 244 2020-10-08 1.7 1.9 2.1
Chile cases 11,449 2020-10-08 0.9 0.9 0.9
Chile deaths 349 2020-10-08 0.8 0.9 1.0
India cases 523,071 2020-10-08 0.9 0.9 0.9
India deaths 6,848 2020-10-08 0.9 0.9 1.0
Ireland cases 3,429 2020-10-08 1.3 1.3 1.3
Ireland deaths 17 2020-10-08 0.9 1.6 2.3
Italy cases 19,079 2020-10-08 1.4 1.4 1.4
Italy deaths 167 2020-10-08 1.0 1.2 1.4
Peru cases 20,833 2020-10-08 0.7 0.7 0.7
Peru deaths 546 2020-10-08 0.8 0.8 0.9
South_Africa cases 10,816 2020-10-08 1.1 1.1 1.1
South_Africa deaths 514 2020-10-08 0.9 1.0 1.0
Spain cases 66,713 2020-10-07 0.9 0.9 0.9
Spain deaths 771 2020-10-07 1.0 1.1 1.1
Sweden cases 2,837 2020-10-08 0.9 0.9 1.0
Sweden deaths 7 2020-10-08 0.4 0.8 1.4
United_Kingdom cases 91,011 2020-10-08 1.8 1.8 1.8
United_Kingdom deaths 372 2020-10-08 1.3 1.4 1.5

10.1.3 Top 10 Countries

Below we show various extremes of \(R_{t,m}\) where counts (deaths or cases) exceed 50 in the last week.

10.1.3.1 Lowest \(R_{t,m}\) based on Deaths

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Libya deaths 57 2020-10-08 0.6 0.8 1.0
Egypt deaths 80 2020-10-08 0.6 0.8 1.0
Peru deaths 546 2020-10-08 0.8 0.8 0.9
Panama deaths 76 2020-10-08 0.7 0.9 1.1
Turkey deaths 414 2020-10-08 0.8 0.9 1.0
Chile deaths 349 2020-10-08 0.8 0.9 1.0
Guatemala deaths 89 2020-10-08 0.7 0.9 1.1
Ethiopia deaths 57 2020-10-08 0.7 0.9 1.2
Saudi_Arabia deaths 179 2020-10-08 0.8 0.9 1.1
Bolivia deaths 227 2020-10-08 0.8 0.9 1.0

10.1.3.2 Lowest \(R_{t,m}\) based on Cases

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Cameroon cases 86 2020-10-08 0.3 0.4 0.4
Aruba cases 145 2020-10-08 0.5 0.6 0.6
Puerto_Rico cases 3,013 2020-10-08 0.6 0.6 0.6
Mozambique cases 766 2020-10-08 0.6 0.6 0.7
Kosovo cases 226 2020-10-08 0.6 0.7 0.7
Lesotho cases 88 2020-10-08 0.6 0.7 0.8
Ghana cases 173 2020-10-08 0.6 0.7 0.8
Peru cases 20,833 2020-10-08 0.7 0.7 0.7
Zimbabwe cases 81 2020-10-08 0.6 0.7 0.9
Jamaica cases 729 2020-10-08 0.7 0.7 0.8

10.1.3.3 Highest \(R_{t,m}\) based on Deaths

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Jordan deaths 70 2020-10-08 1.6 2.0 2.5
Canada deaths 244 2020-10-08 1.7 1.9 2.1
Poland deaths 279 2020-10-08 1.5 1.7 1.8
Czechia deaths 174 2020-10-08 1.4 1.6 1.8
Portugal deaths 69 2020-10-08 1.2 1.5 1.8
Ecuador deaths 388 2020-10-08 1.3 1.5 1.6
United_Kingdom deaths 372 2020-10-08 1.3 1.4 1.5
Tunisia deaths 99 2020-10-08 1.1 1.4 1.6
Hungary deaths 96 2020-10-08 1.1 1.3 1.6
Romania deaths 378 2020-10-08 1.2 1.3 1.4

10.1.3.4 Highest \(R_{t,m}\) based on Cases

Country Estimated Type Count (Last Week) Week Ending R - Lower CI R - Mean R - Uppper CI
Sri_Lanka cases 1,079 2020-10-08 9.9 10.5 11.1
Malaysia cases 2,858 2020-10-08 2.4 2.5 2.6
Afghanistan cases 348 2020-10-08 1.9 2.1 2.3
Benin cases 54 2020-10-08 1.4 1.8 2.3
Andorra cases 518 2020-10-08 1.7 1.8 2.0
United_Kingdom cases 91,011 2020-10-08 1.8 1.8 1.8
Latvia cases 437 2020-10-08 1.6 1.8 1.9
Jordan cases 8,375 2020-10-08 1.6 1.6 1.7
Iceland cases 444 2020-10-08 1.4 1.5 1.7
Malta cases 384 2020-10-08 1.4 1.5 1.7

10.2 Result Plots

Below we plot results for each country/province in a list. We filter out weeks where the upper end of confidence interval for \(R_{t,m}\) exceeds five.

10.2.1 South Africa

Below we plot estimates for all the provinces. Note that [1] recommends only to start using estimates after at least 12 cases have occurred. On that basis we do not have estimates for R based on deaths for a number of provinces.

10.2.2 Other Countries

Below we plot all the countries:

10.2.3 Countries by Continent

10.2.3.1 Africa

10.2.3.2 America

10.2.3.3 Asia

10.2.3.4 Europe

10.2.3.5 Oceania

10.2.4 Scatter Plots of \(R_{t,m}^{cases}\) vs. \(R_{t,m}^{deaths}\)

Below we plot estimates of \(R_{t,m}\) based on cases versus those based on deaths for countries where these estimates range between 0.5 and 2.

10.2.4.1 South Africa

Below we plot where there were more than 5 deaths and cases in the last week. It appears that, there may be some inconsistencies between \(R_{t,m}^{cases}\) and \(R_{t,m}^{deaths}\).

10.2.4.2 Other countries

Below we plot where there were more than 25 deaths and cases in the last week. It appears that, generally, \(R_{t,m}^{cases}\) and \(R_{t,m}^{deaths}\) are consistent.

10.3 Mobility

10.3.1 Simple plot

Below we plot weeks of estimates of \(R_{t,m}\) versus the average mobility index that was constructed. There is a clear link between mobility and the reproductive number. As it decreases \(R_{t,m}\) reduces:

10.3.2 Modelling Results

TO DO

11 Discussion

From the basic plots it’s clear that South Africa and a few other countries appear to be on a different “slope” than European countries show. These include Brazil, Peru, Chile and India.

The above shows estimates for reproductive number using cases and deaths (\(R_{t,m}^{cases}\) and \(R_{t,m}^{deaths}\)) for each country \(m\) over time \(t\) in weeks.

From the current estimates it appears that, at present, in general South African provincial estimates based on cases and deaths correspond. An exception to this may be Eastern Cape with estimates based on deaths exceeding those based on cases.

It is also clear that estimates based on cases appear to precede the movements based on deaths over time. This can be expected as, all things being equal, infections and associated cases should be a precursor to deaths.

On a scatter plot of countries most appear to have \(R_{t,m}^{cases}\) correlated well with \(R_{t,m}^{deaths}\). There are some outliers with \(R_{t,m}^{deaths}\) higher than \(R_{t,m}^{cases}\) indicating perhaps limited testing, or alternatively epidemics that are slowing (given the leading nature of cases vs. deaths).

Overall it’s clear that having multiple measures of \(R_{t,m}\) appears useful and monitoring it’s value is something useful.

We also show that mobility is clearly correlated with \(R_{t,m}^{cases}\) in the countries shown.

Limitation of this method to estimate \(R_{t,m}\) are noted in [1]

  • It’s sensitive to changes in transmissibility, changes in contact patterns, depletion of the susceptible population and control measures.
  • It relies on an assumed serial interval assumptions.
  • The size of the time window can affect the volatility of results.
  • Results are time lagged with regards to true infection, more so in the case of the use of deaths.
  • It’s sensitive to changes in case (or death) detection.
  • The serial interval may change over time.

Despite these limitation we believe the ease of calculation of this method and the ability to use multiple sources makes it useful as a monitoring tool.

12 Detailed Output

Detailed output for all countries are saved to a comma-separated value file. The file can be found here.

13 Author

This report was prepared by Louis Rossouw. Please get in contact with Louis Rossouw if you have comments or wish to receive this regularly.

Louis Rossouw
Head of Research & Analytics
Gen Re | Life/Health Canada, South Africa, Australia, NZ, UK & Ireland
Email: LRossouw@GenRe.com Mobile: +27 71 355 2550

The views in this document represents that of the author and may not represent those of Gen Re. Also note that given the significant uncertainty involved with the parameters, data and methodology care should be taken with these numbers and any use of these numbers.

References

[1] A. Cori, N. M. Ferguson, C. Fraser, and S. Cauchemez, “A new framework and software to estimate time-varying reproduction numbers during epidemics,” American Journal of Epidemiology, vol. 178, no. 9, pp. 1505–1512, Sep. 2013, doi: 10.1093/aje/kwt133. [Online]. Available: https://doi.org/10.1093/aje/kwt133

[2] A. Cori, EpiEstim: A package to estimate time varying reproduction numbers from epidemic curves. 2013 [Online]. Available: https://CRAN.R-project.org/package=EpiEstim

[3] V. Marivate et al., “Coronavirus disease (COVID-19) case data - South Africa.” Zenodo, 2020 [Online]. Available: https://zenodo.org/record/3888499

[4] European Centre for Disease Prevention and Control, “Data on the geographic distribution of COVID-19 cases worldwide.” European Union, 2020 [Online]. Available: https://www.ecdc.europa.eu/en/publications-data/download-todays-data-geographic-distribution-covid-19-cases-worldwide

[5] Google LLC, “Google COVID-19 community mobility reports.” 2020 [Online]. Available: https://www.google.com/covid19/mobility/

[6] P. Nouvellet et al., “Report 26: Reduction in mobility and COVID-19 transmission,” Imperial College London, 2020 [Online]. Available: https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis/covid-19/report-26-mobility-transmission/

[7] N. Ferguson et al., “Report 9: Impact of non-pharmaceutical interventions (NPIs) to reduce COVID19 mortality and healthcare demand,” Imperial College London, 2020 [Online]. Available: https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis/covid-19/report-9-impact-of-npis-on-covid-19/